10 HOME : PRINT "THIS PROGRAM IS BASED ON THE GRAPHICALLY": PRINT "SPEAKING COLUMN OF MARK PELCZARSKI IN": PRINT "THE OCTOBER 1982 SOFTALK."
20 PRINT "IT USES BIT MAPPED GRAPHICS": PRINT "READ THE ARTICLE FOR A GOOD EXPLANATION": PRINT "OF THEM."
30 PRINT "THIS PROGRAM WILL PUT A BIT MAPPED": PRINT "MUSHROOM AT THE X,Y LOCATION OF YOUR ": PRINT "PADDLES COMBINED OR YOUR JOYSTICK": PRINT "JUST MOVE YOUR PADDLES OR JOYSTICK TO": PRINT "THE LOCATION YOU WANT AND PRESS BUTTON 0"
35 PRINT "GIVE THE PROGRAM A MOMENT TO START AND": PRINT "THEN HAPPY GARDENING.": PRINT "PRESS ANY KEY TO START.": GET KEY$
50 HGR : VTAB 23
60 POKE -16302,0
70 GOSUB 180: REM SET UP X,Y SCREEN LOCATIONS
80 GOSUB 270: REM SET UP GRAPHIC CHARACTER TABLE
85 XI = 1:YI = 14
90 X = PDL(0)/7
91 Y = PDL(1)/1.5
95 REM FOLLOWING SETS UP BIT MAPPED MUSHROOM
120 FOR I = 0 TO 7
122 POKE YT(Y +I) +X,CT(0,I)
125 POKE YT(Y +I) +X +1,CT(1,I)
131 POKE YT(Y +7 +I) +X,CT(2,I)
135 POKE YT(Y +7 +I) +X +1,CT(3,I)
140 NEXT I
145 X = X +XI:Y = Y +YI
148 IF (X >38) OR (X <1) THEN XI = -XI: GOTO 145
150 IF (Y <7) OR (Y >192) THEN YI = -YI: GOTO 145
155 IF PEEK(49249) <1 THEN GOTO 155
160 GOTO 90
170 REM THIS SUBROUTINE CREATE A Y LOOKUP TABLE, YT
180 DIM YT(191)
190 FOR Y = 0 TO 191
200 Y1 = INT(Y/8):YR = Y -Y1 *8
210 Y2 = INT(Y1/8):YS = Y1 -Y2 *8
220 YL = 8192 +Y2 *40 +YS *128 +YR *1024
230 YT(Y) = YL
240 NEXT Y
250 RETURN
260 REM THIS SUBROUTINE CREATES A CHARACTER DEFINITION TABLE CALLED CT